#ifndef __LXZ_DEBUG_H__
#define __LXZ_DEBUG_H__

#ifdef LXZAT_DEBUG
#  ifdef LXZAT_SIMU
#    define OS_DBG_LOG(arg) do { lxz_runlog_f_printf arg; } while(0)
#    define OS_DBG_URC(arg) do { lxz_debug_f_printf arg; } while(0)
#    define OS_DBG_INF(arg) do { } while(0)
#    define OS_DBG_DBG(arg) do { } while(0)
#    define OS_DBG_ERR(arg) do { } while(0)
#    define OS_DBG_HEX(arg) do { } while(0)
#  else
#    define OS_DBG_LOG(arg) do { lst_logger_f_printf arg; } while(0)
#    define OS_DBG_URC(arg) do { } while(0)
#    define OS_DBG_INF(arg) do { } while(0)
#    define OS_DBG_DBG(arg) do { } while(0)
#    define OS_DBG_ERR(arg) do { } while(0)
#    define OS_DBG_HEX(arg) do { } while(0)
#    define OS_DTMR_UPD(arg) do { lst_glogtimer_f_update arg; } while(0)
#    define OS_DTMR_LOG(arg) do { lst_glogtimer_f_printf arg; } while(0)
#  endif
#else /* LXZAT_DEBUG */
#  define OS_DBG_LOG(arg) do { } while(0)
#  define OS_DBG_URC(arg) do { } while(0)
#  define OS_DBG_INF(arg) do { } while(0)
#  define OS_DBG_DBG(arg) do { } while(0)
#  define OS_DBG_ERR(arg) do { } while(0)
#  define OS_DBG_HEX(arg) do { } while(0)
#endif /* LXZAT_DEBUG */

int lxz_debug_f_printf(const char * vfmt, ...);

#endif /* __LXZ_DEBUG_H__ */
